Portable devices include mobile phones, personal digital assistants (PDAs), portable gaming devices, and so forth. Portable devices are usually capable of communicating over a network to download additional programs. Examples of such programs include document reader programs, web-based programs, games, and so forth. The number of available programs is large and constantly growing. Unfortunately, the ability of a given device to download, store, and run programs is not similarly unlimited. Furthermore, the amount of data that can be stored for such programs and/or for the user is also limited.
In fact, portable devices are often considered resource constrained devices because they have fewer resources and/or lower amounts of given resources as compared to non-portable devices, which are typically larger and usually connected to relatively infinite power sources. Some non-portable devices, such as television set-top boxes and so-called low-end personal computers, are also usually considered resource constrained. By way of example, resource-constrained devices often have much less memory than their non-resource-constrained counterparts. Consequently, frequent downloading of programs can cause the memory of a resource-constrained device to become depleted quickly.
Accordingly, there is a need for schemes and/or techniques that can enable the efficient and/or relatively-seamless management of the memory of devices, including the memory of portable and other resource-constrained devices.